/**
 * 主题管理-主题商品查询
 */
var querySubgoodsSearch = function() {
	var querySubGoodsFieldSet = new Ext.form.FieldSet({
		id : 'querySubGoodsFieldSet',
		title : '查询条件',
		collapsible : true,// 可折叠
		buttonAlign : 'center',
		keys : [{
					key : 13, // 13代表回车
					fn : querySubgoods,
					scope : this
				}],
		items : [{
					layout : 'column',
					border : false,
					items : [{
								columnWidth : .25,
								layout : 'form',
								border : false,
								items : [{
									       id:'subjectGoodsManger_subjectId',
											xtype : 'textfield',
											anchor : '100%',
											fieldLabel : '主题编号',
											name : "subjectId"
										}]
							}, {
								columnWidth : .25,
								layout : 'form',
								border : false,
								items : [{
											fieldLabel : '主题名称',
											xtype : 'subjectCmb',
											allowBlank : true,
											hiddenName : 'subjectId',
											showValue : true,
											defaultFirstRow : 1,
											statusArr : [0, 1]
										}]
							}, {
								columnWidth : .25,
								layout : 'form',
								border : false,
								items : [{
											xtype : 'dataDictionaryCmb',
											anchor : '100%',
											fieldLabel : "主题状态",
											editable : false,
											autoLoad : false,
											allowBlank : true,
											existall : true,
											defaultFirstRow : 1,
											hiddenName : 'subjectStatus',
											dictionaryType : PmsUtil.goods_lable_status
										}]
							}, {
								columnWidth : .25,
								layout : 'form',
								border : false,
								items : [{
											xtype : 'textfield',
											anchor : '100%',
											fieldLabel : '商品名称',
											name : "goodsName"
										}]

							}]
				}, {
					layout : 'column',
					border : false,
					items : [{
								columnWidth : .25,
								layout : 'form',
								border : false,
								items : [{
											xtype : 'textfield',
											anchor : '100%',
											fieldLabel : '商品编码',
											name : "goodsCode"
										}]
							}, {
								columnWidth : .25,
								layout : 'form',
								border : false,
								items : [{
									layout : 'column',
									border : false,
									items : [{
												text : '查询',
												xtype : 'button',
												width : 80,
												handler : function() {
													querySubgoods();
												},
												style : {
													marginLeft : "100px",
													marginRight : "10px"
												}
											}, {
												text : '重置',
												xtype : 'button',
												width : 80,
												handler : function() {
													querySubGoodsForm.getForm()
															.reset();
												}
											}]
								}]
							}]
				}]
	});
	fieldSetListeners(['querySubGoodsFieldSet', 'querySubGoodsForm',
					'subjectGoodsGrid'], [0.16, 0.84]);

	var querySubGoodsForm = new Ext.form.FormPanel({
				id : 'querySubGoodsForm',
				anchor : '100% 16%',
				frame : true,
				labelAlign : 'right',
				bodyBorder : false,
				items : [querySubGoodsFieldSet]
			});
	return querySubGoodsForm;
};

/**
 * grids
 */


var subjectGoodsGrid = function() {
	// 定义表的每列（对应表头信息）
	var subGoodsManagerCm = new Ext.grid.ColumnModel([
			new Ext.grid.RowNumberer(), {
				dataIndex : "subjectId",
				header : "主题编号",
				sortable : true,
				width : 70
			}, {
				dataIndex : "subjectName",
				header : "主题名称",
				sortable : true,
				width : 70,
				renderer : function(value, meta, record) {
					if (value) {
						meta.attr = 'ext:qtitle="主题名称:" ext:qtip="' + value
								+ '"';
						return value;
					}
				}
			}, {
				dataIndex : "subjectPic",
				header : "主题图片",
				sortable : true,
				width : 100,
				renderer : function(value) {
					return PmsUtil.ShowPicture(value);
				}
			}, {
				dataIndex : "subjectOrder",
				header : "主题排序",
				sortable : true,
				width : 70
			}, {
				dataIndex : "subjectStatus",
				header : "主题状态",
				sortable : true,
				width : 70,
				renderer : function(value) {
					return PmsUtil.SubjectStatus(value);
				}
			}, {
				dataIndex : "goodsId",
				header : "商品编号",
				sortable : true,
				width : 70
			}, {
				dataIndex : "goodsName",
				header : "商品名称",
				sortable : true,
				width : 70
			}, {
				dataIndex : "goodsCode",
				header : "商品编码",
				sortable : true,
				width : 70
			}, {
				dataIndex : "goodsStatus",
				header : "商品状态",
				sortable : true,
				width : 70,
				renderer : function(value) {
					if (value == 1) {
						return '<div style="color:red;">'
								+ PmsUtil.GoodsStatus(value) + '</div>';
					}
					return PmsUtil.GoodsStatus(value);
				}
			}, {
				dataIndex : "goodsPic",
				header : "商品图片",
				sortable : true,
				width : 100,
				renderer : function(value) {
					return PmsUtil.ShowPicture(value);
				}
			}, {
				dataIndex : "createdDate",
				header : "创建时间",
				sortable : true,
				width : 130
			}, {
				dataIndex : "createdName",
				header : "创建人",
				sortable : true,
				width : 60
			}, {
				header : "管理",
				width : 200,
				dataIndex : "id",
				sortable : false,
				renderer : function(j, i, g, m, h) {
					var id = g.data.id;
					var k = "";
					if (isGranted("subjectGoodsManager_删除主题商品")) {
						k += '&nbsp;&nbsp;<a href="#" onclick="delSubGoods('
								+ id + ');" >删除</a>';
					}
					return k;
				}
			}]);

	// 定义分析器
	var subjectGoodsGrid = new Ext.data.JsonReader({
				totalProperty : "totalCount",
				root : "list",
				fields : [{
							name : "id"
						}, {
							name : "subjectId"
						}, {
							name : "subjectName"
						}, {
							name : "subjectPic"
						}, {
							name : "subjectOrder"
						}, {
							name : "subjectStatus"
						}, {
							name : "goodsId"
						}, {
							name : "goodsName"
						}, {
							name : "goodsPic"
						}, {
							name : "goodsCode"
						}, {
							name : "goodsStatus"
						}, {
							name : "createdDate"
						}, {
							name : "createdName"
						}]
			});

	// 取数据store
	var subGoodsViewStore = new Ext.data.Store({
				autoLoad : true,// 要加载数据必须设置为true
				proxy : new Ext.data.HttpProxy({
							url : __ctxPath
									+ "/subjectManager/selectSubjectGoods"
						}),
				remoteSort : false,
				baseParams : {
					start : 0,
					limit : 25
				},
				listeners : {
					beforeload : {
						fn : function(thiz, options) {
							Ext.apply(thiz.baseParams, Ext
											.getCmp('querySubGoodsForm')
											.getForm().getValues());
						}
					}
				},
				reader : subjectGoodsGrid
			});

			
	// 定义grid的toolbar
	var subjectGoodsTb = new Ext.Toolbar({
				id : "subjectGoodsTb",
				height : 28,
				items : []
			});
	subjectGoodsTb.add(new Ext.scm.Button({
				text : "刷 新",
				iconCls : "btn-refresh",
				width : 80,
				hsValue : 'subjectGoodsManager_刷新',
				pressed : true,
				handler : function() {
					querySubgoods();
				}
			}));		
	
	var subjectGoodsGrid = new Ext.grid.GridPanel({
				id : 'subjectGoodsGrid',
				store : subGoodsViewStore,
				cm : subGoodsManagerCm,
				autoScroll : true,
				loadMask : true,
				stripeRows : true,
				columnLines : true,
				loadMask : {
					msg : "正在加载数据，请稍侯……"
				},
				viewConfig : {
					emptyText : '没有您想要的数据!'
				},
				anchor : '100% 84%',
				frame : true,
				 tbar : subjectGoodsTb,
				bbar : new PG.PagingBar({
							id : 'subGoodsGridPage',
							store : subGoodsViewStore
						})
			});
	return subjectGoodsGrid;
};

// 查询
function querySubgoods() {
	if (Ext.getCmp('querySubGoodsForm').getForm().isValid()) {
		var grid = Ext.getCmp('subjectGoodsGrid');
		var store = grid.store;
		var pagesize = Ext.getCmp('subGoodsGridPage').pageSize;
		store.load({
					params : {
						start : 0,
						limit : pagesize
					}
				});
	}
}

/**
 * 删除主题商品
 * 
 * @param {}
 *            id
 */
function delSubGoods(subGoodsId) {
	Ext.Msg.confirm("提示", "确定删除吗？", function(c) {
				if (c == 'yes') {
					Ext.Ajax.request({
								url : __ctxPath
										+ '/subjectManager/deleteSubGoodsById',
								params : {
									subGoodsId : subGoodsId
								},
								success : function(option) {
									var s = Ext.util.JSON
											.decode(option.responseText);
									if (s.success) {
										Ext.MessageBox.show({
													title : '提示',
													msg : '删除成功!',
													buttons : Ext.MessageBox.OK,
													icon : Ext.MessageBox.INFO
												});
										Ext.getCmp("subjectGoodsGrid")
												.getStore().load();
									} else {
										Ext.MessageBox.show({
													title : '提示',
													msg : '删除失败!',
													buttons : Ext.MessageBox.OK,
													icon : Ext.MessageBox.WARNING
												});
									}
								},
								failure : function() {
									Ext.MessageBox.show({
												title : '提示',
												msg : '服务器响应超时!',
												buttons : Ext.MessageBox.OK,
												icon : Ext.MessageBox.WARNING
											});
								}
							})
				}

			})
}

Ext.getCmp("centerTabPanel").getActiveTab().add(querySubgoodsSearch(),
		subjectGoodsGrid());
Ext.getCmp("centerTabPanel").getActiveTab().doLayout();
